iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 21
0
Software Development

從零開始的Python練成記系列 第 21

[Day 21]曾經,我在Java的最大罩門:檔案讀寫

  • 分享至 

  • xImage
  •  

雖然很不想去回憶這些往事,但還是必須面對,當時光是去吸收Java的FileInpitStream, Buffer Reader, Try/Catch, IOException, FileNotFoundException...等這類型的程式碼就已經耗了自己將近兩個半月的時間,但最後還是含笑收割,而老實說,當我看到Python的檔案讀寫時,其實也有些害怕,就怕跟當初在學Java一樣會四處碰壁,然而沒有發生這種事情,真是萬幸。


進到檔案讀寫的部分,就必須先說明有關讀取檔案或指定輸出檔案的規則,首先,在Python裡面要建立檔案的程式碼如下:

file_tester = open("Testing_text.txt", "w")

open的這個指令裡面可以看到兩個雙引號所包覆的東西,前面的是要執行指令的目標檔案名稱,後面則是對該檔案要執行的動作,說明一下執行動作的種類吧,分為兩種情形:

-當目標檔案存在時
1."a"即為append,也就表示在該檔案的最尾端進行新增指令
2."w"即為write,在這裡表示為覆寫(Overwrite)
3."r"即為read,代表只對該檔案進行內容讀取,不會進行修改

-當目標檔案不存在時
1."x"這個代表create,當檔案如果不存在的時候就會建立符合該名稱的檔案
不用c的原因是因為c在python裡面已經代表character(大概)
2."w","a"的來由跟上方相同,但在目標檔案不存在的時候都一樣是建立符合該名稱的檔案

那麼,又要怎麼將資料寫入檔案裡面呢?那就要透過write()來進行這個任務了;而相對的,若要對檔案內部的字串進行讀取,則可以用readline()來讀取,就在下方測試一下吧

file_tester = open("Testing_file.txt", "w")
#目前這個檔案不存在,所以是新建檔案並進行寫入
file_tester.write("Say hello to iTalthon competitors!")
#透過上面這行來進行資料寫入
file_tester.close()
#要使用close()指令才能讓這個寫入的指令停止運作
file_reader = open("Testing_file.txt", "r")
#要求對檔案進行讀取的動作
print(file_reader.readline())
#以readline()來取得檔案內部第一行的內容
file_reader.close()
#同理,以close()指令來停止運作
"""
執行結果如下:
與程式同路徑的位置新增一名為"Testing_flie.txt"之檔案
系統輸出:Say hello to iTalthon competitors!

可見執行結果正確
"""

不知不覺就已經寫了三週的鐵人賽


上一篇
[Day 20]遞迴式計算的小實驗:N階乘法
下一篇
[Day 22]要如何對List內的數值一並進行運算?
系列文
從零開始的Python練成記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言